package cn.ztf.zshop.sys.service;

import cn.ztf.zshop.sys.dto.*;
import cn.ztf.zshop.sys.po.SysUser;
import cn.ztf.zshop.sys.vo.LoginInfo;
import cn.ztf.zshop.sys.vo.SysDeptVo;
import cn.ztf.zshop.sys.vo.SysUserVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface SysUserService extends IService<SysUser> {
    void create(SysUserDto sysUserDto);

    void edit(SysUserDto sysUserDto);

    void delete(Long id);


    Page<SysUserVo> listPage(Page<SysUser> page);

    SysUserVo getSysUserById(Long id);

    void editInfo(SysUserInfoDto sysUserInfoDto);

    void updatePassword(SysUserPasswordDto sysUserPasswordDto);

    LoginInfo userLogin(UserLoginDto userLoginDto);

    void userLogout();


    SysUserVo getByUsername(String username);

    List<String> getPermissionByUserId(Long id);

    void userRegister(SysUserRegisterDto sysUserRegisterDto);
}
